package com.ph.shopping.facade.mapper;

import java.util.List;

import org.springframework.stereotype.Component;

import com.alibaba.dubbo.config.annotation.Service;
import com.ph.shopping.common.core.base.BaseMapper;
import com.ph.shopping.common.core.exception.BizException;
import com.ph.shopping.facade.permission.entity.WarehouseAddress;
import com.ph.shopping.facade.permission.vo.WarehouseAddressVo;
/**
 * 
 * @项目：phshopping-service-permission
 *
 * @描述：仓库地址Mapper
 *
 * @作者： liuy
 *
 * @创建时间：2017年3月27日
 *
 * @Copyright @2017 by liuy
 */
@Component
@Service(version="1.0.0")
public interface WarehouseAddressMapper  extends BaseMapper<WarehouseAddress>{
	
	/**
	 * 分页查询仓库地址信息
	 * @param warehouseAddressVo 仓库地址
	 * @return List<WarehouseAddressVo>
	 * @throws
	 */
	public List<WarehouseAddressVo> getWarehouseAddressVoListByPage(WarehouseAddressVo warehouseAddressVo) throws BizException ;

	/**
	 * 查询仓库地址信息List
	 * @param warehouseAddressVo 仓库地址
	 * @return List<WarehouseAddressVo>
	 * @throws
	 */
	public List<WarehouseAddressVo> getWarehouseAddressVoList(WarehouseAddress warehouseAddress) throws BizException ;
	
	/**
	 * 查询仓库地址明细信息
	 * @param warehouseAddressVo 仓库地址
	 * @return WarehouseAddress
	 * @throws
	 */
	public WarehouseAddressVo getWarehouseAddressDetail(WarehouseAddressVo warehouseAddressVo) throws BizException ;

	/**
	 * 仓库地址新增
	 * @param warehouseAddress 仓库地址
	 * @return WarehouseAddress
	 * @throws
	 */
	public void addWarehouseAddress(WarehouseAddress warehouseAddress) throws BizException ;
	
	/**
	 * 批量删除仓库地址信息
	 * @param list 仓库地址Id
	 * @return void
	 * @throws
	 */
	public void batchDeleteWarehouseAddress(List<Long> list) throws BizException ;

	/**
	 * 设置除参数外的其他地址为非默认地址
	 * @param list 仓库地址Id
	 * @return void
	 * @throws
	 */
	public void updateOtherNotDefault(WarehouseAddress warehouseAddress) throws BizException ;

	/**
	 * 设置除参数外的其他地址为非提货点
	 * @param list 仓库地址Id
	 * @return void
	 * @throws
	 */
	public void updateOtherNotDeliveryPoint(WarehouseAddress warehouseAddress) throws BizException ;


}
